#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>

int Max(int a, int b)
{
    return a > b ? a : b;
}

int main(int argc, char* argv[])
{
    int arr[100][100] = { 0 };
    int num[100][100] = { 0 };
    int N = 0;

    scanf("%d", &N);

    int i = 0;
    for (i = 0; i < N; i++)
    {
        int j = 0;
        for (j = 0; j <= i; j++)
        {
            scanf("%d", &arr[i][j]);
            if (i == j && 0 == i)
            {
                num[i][j] = arr[i][j];
            }
            if (0 == j && i > 0)
            {
                num[i][j] = arr[i][j] + num[i - 1][j];
            }
            else
            {
                num[i][j] = arr[i][j] + Max(num[i - 1][j - 1], num[i - 1][j]);
            }
        }
    }

    if (N % 2 == 0)
    {
        printf("%d", Max(num[N - 1][N / 2], num[N - 1][N / 2 - 1]));
    }
    else
    {
        printf("%d", num[N - 1][N / 2]);
    }
    return 0;
}